﻿// 1387. 家的范围.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//

#include <iostream>


/*

https://www.acwing.com/problem/content/1389/

农夫约翰在一片边长为 N 英里的正方形土地中放牛。

它的牛只能在这片土地里吃草。

这片土地可以看作是一个 N×N 的方格矩阵。

其中一部分方格区域的土地已经被破坏了。

现在约翰想要统计目前还有多少个可以用来放牧的正方形区域土地。

边长大于 2 且内部完好无损的正方形土地被视为可用来放牧的土地。

在统计可用来放牧的不同正方形区域的个数时，一些方格区域可以被重复考虑。

换句话说，统计到的两个不同的可放牧的正方形区域之间可以存在重叠部分。

输入格式
第一行包含一个整数 N。

接下来 N 行，每行包含一个长度为 N 的 01 字符串，它们共同表现出了整片正方形土地的现状。

其中，0 表示被破坏的土地，1 表示完好的土地。

输出格式
找出所有可放牧正方形区域，并按照它们的边长进行归类和输出。

在输出时，每行输出两个整数，第一个整数表示一种可放牧正方形区域的边长，第二个整数表示这种边长的可放牧正方形区域的数量。

输出时，按边长从小到大的顺序依次输出。

数据范围
2≤N≤250,

输入样例：
6
101111
001111
111111
001111
101101
111001
输出样例：
2 10
3 4
4 1
*/
int main()
{
    std::cout << "Hello World!\n";
}

 